package com.ds.console.bo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.Size;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;


/**
 * 文件上传记录对象
 *
 * @author fusheng
 * @since 2024-04-11
 */
@Data
@Accessors(chain = true)
public class TFileBo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "主键ID")
    private Long id;

    @Schema(description = "分片上传的uploadId")
    @Size(max = 300)
    private String uploadId;

    @Schema(description = "文件唯一标识（md5）")
    @Size(max = 300)
    private String fileMd5;

    @Schema(description = "文件名")
    @Size(max = 100)
    private String fileName;

    @Schema(description = "桶名")
    @Size(max = 100)
    private String bucketName;

    @Schema(description = "文件存储路径")
    @Size(max = 500)
    private String objectName;

    @Schema(description = "文件大小（byte）")
    private Long fileSize;

    @Schema(description = "每个分片大小（byte）")
    private Long chunkSize;

    @Schema(description = "分片数量")
    private Integer chunkNum;

    @Schema(description = "是否上传完成(1：是  0：否)")
    private Byte isFinish;
}
